package sort;

import java.util.Arrays;

/**
 * @Classname BubbleSort
 * @Author happytaohaha
 * @Date 2020/2/28
 * @Description 冒泡排序
 *  j < len - i - 1  的原因是  j  第一次回将最后一个数归位，下次不需要再次为其排序。
 *  复杂度为 O(n^2)
 *  稳定
 */
public class BubbleSort {

    public static int[] bubbleSort(int[] array) {
        int len = array.length;
        int temp;
        for (int i = 0; i < len; i++) {
            for (int j = 0; j < len - i - 1; j++) {
                if (array[j] > array[j + 1]) {
                    temp = array[j + 1];
                    array[j + 1] = array[j];
                    array[j] = temp;
                }
            }
        }
        return array;
    }

    public static void main(String[] args) {
        System.out.println(Arrays.toString(bubbleSort(new int[]{5, 4, 3, 2, 1})));
    }
}
